method of successive approximation